/**
 * Create in 2012-9-8 上午11:25:06.
 */
package kit4j.common.io.file;

import java.io.File;
import java.io.FileFilter;

/**
 * 文件过滤器适配类型，提供文件过滤器与文件检阅者对象的操作整合适配(即在文件过滤器接受文件的情况下才使用文件检阅者对文件进行检阅)。
 * @author MiniKnife
 *
 */
public class FileFilterAdapter implements FileFilter {

	private FileFilter filter;
	
	private FileLooker looker;
	
	/**
	 * 为给定的文件过滤器和文件检阅者创建一个适配对象。
	 * @param filter 文件过滤器
	 * @param looker 文件检阅者
	 */
	public FileFilterAdapter(FileFilter filter, FileLooker looker) {
		this.filter = filter;
		this.looker = looker;
	}
	
	/**
	 * @see java.io.FileFilter#accept(java.io.File)
	 */
	@Override
	public boolean accept(File file) {
		if(filter.accept(file)) {
			looker.lookup(file);
			
			return true;
		} else {
			return false;
		}
	}

}
